package com.itfreer.print.toWord;

import java.io.InputStream;
import java.io.OutputStream;

/**
 * 定义将html转换为word接口
 */
public interface HtmlToWord {
	
	/**
	 * 将html文件转换为pdf文件
	 * 
	 * @param htmlUrl html文件
	 * @param wordFile word文件
	 * @throws Exception 
	 */
	void toWord(String htmlUrl, OutputStream wordFile) throws Exception;

	/**
	 * 将html文件转换为pdf文件
	 * 
	 * @param htmlUrl html文件
	 * @param wordFile word文件
	 * @throws Exception 
	 */
	void toWord(InputStream htmlFile, OutputStream wordFile) throws Exception;
	
	/**
	 * 基于模板输出word文件
	 * 
	 * @param tempPath 模板文件路径
	 * @param templateFile 模板文件
	 * @param data	模板数据
	 * @param wordFile 输出word文件
	 * @throws Exception 
	 */
	void toWord(String tempPath, String templateFile, Object data, OutputStream wordFile) throws Exception;
	
	/**
	 * 基于模板售出word文件
	 * @param templateFile 模板文件
	 * @param data 模板数据
	 * @param wordFile 输出word文件
	 * @throws Exception
	 */
	public void toWord(String templateFile, Object data, OutputStream wordFile) throws Exception ;
	
	/**
	 * 将html文件转换为pdf文件
	 * 
	 * @param htmlUrl html文件
	 * @param wordFile word文件
	 * @param pageLocation 纸张方向问题 true 为横版，false为竖版
	 * @throws Exception 
	 */
	void toWord(String htmlUrl, OutputStream wordFile,boolean pageLocation) throws Exception;

	/**
	 * 将html文件转换为pdf文件
	 * 
	 * @param htmlUrl html文件
	 * @param wordFile word文件
	 * @param pageLocation 纸张方向问题 true 为横版，false为竖版
	 * @throws Exception 
	 */
	void toWord(InputStream htmlFile, OutputStream wordFile,boolean pageLocation) throws Exception;
	
	/**
	 * 基于模板输出word文件
	 * 
	 * @param tempPath 模板文件路径
	 * @param templateFile 模板文件
	 * @param data	模板数据
	 * @param wordFile 输出word文件
	 * @param pageLocation 纸张方向问题 true 为横版，false为竖版
	 * @throws Exception 
	 */
	void toWord(String tempPath, String templateFile, Object data, OutputStream wordFile,boolean pageLocation) throws Exception;
	
	/**
	 * 基于模板售出word文件
	 * @param templateFile 模板文件
	 * @param data 模板数据
	 * @param wordFile 输出word文件
	 * @param pageLocation 纸张方向问题 true 为横版，false为竖版
	 * @throws Exception
	 */
	public void toWord(String templateFile, Object data, OutputStream wordFile,boolean pageLocation) throws Exception ;
}
